{
ShellApp *app = user_data;
GVariant *changed_properties;
- GVariantIter iter;
gboolean busy = FALSE;
- const gchar *key, *interface_name_for_signal;
- GVariant *value;
+ const gchar *interface_name_for_signal;
g_variant_get (parameters,
"(&s@a{sv}as)",
if (g_strcmp0 (interface_name_for_signal, "org.gtk.Application") != 0)
return;
- g_variant_iter_init (&iter, changed_properties);
- while (g_variant_iter_next (&iter, "{&sv}", &key, &value))
- {
- if (g_strcmp0 (key, "Busy") != 0)
- {
- g_variant_unref (value);
- continue;
- }
-
- busy = g_variant_get_boolean (value);
- g_variant_unref (value);
- break;
- }
+ g_variant_lookup (changed_properties, "Busy", "b", &busy);
if (busy)
shell_app_state_transition (app, SHELL_APP_STATE_BUSY);